From d5e5616ae626fc68535984cb239f1f497dbf0048 Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Mon, 19 Aug 2013 15:42:30 +0200 Subject: [PATCH] icon-theme: Add ScaledDirectories support For backwards compat support we don't want old implementations not supporting scaling to see the new scaled directories, so move these to a separate list. --- gtk/gtkicontheme.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gtk/gtkicontheme.c b/gtk/gtkicontheme.c index b6066062fc..b1e02a89df 100644 --- a/gtk/gtkicontheme.c +++ b/gtk/gtkicontheme.c @@ -1085,6 +1085,7 @@ insert_theme (GtkIconTheme *icon_theme, const char *theme_name) int i; GList *l; char **dirs; + char **scaled_dirs; char **themes; GtkIconThemePrivate *priv; IconTheme *theme = NULL; @@ -1169,7 +1170,9 @@ insert_theme (GtkIconTheme *icon_theme, const char *theme_name) g_key_file_free (theme_file); return; } - + + scaled_dirs = g_key_file_get_string_list (theme_file, "Icon Theme", "ScaledDirectories", NULL, NULL); + theme->comment = g_key_file_get_locale_string (theme_file, "Icon Theme", "Comment", @@ -1183,7 +1186,13 @@ insert_theme (GtkIconTheme *icon_theme, const char *theme_name) for (i = 0; dirs[i] != NULL; i++) theme_subdir_load (icon_theme, theme, theme_file, dirs[i]); + if (scaled_dirs) + { + for (i = 0; scaled_dirs[i] != NULL; i++) + theme_subdir_load (icon_theme, theme, theme_file, scaled_dirs[i]); + } g_strfreev (dirs); + g_strfreev (scaled_dirs); theme->dirs = g_list_reverse (theme->dirs); -- 2.30.2